package com.yqh.Collection;

/**
 * Collection 集合系列家族的使用场景
 * @author 阳秋豪
 * @createTime 2024/3/6
 */
public class Test7 {
    public static void main(String[] args) {
        // 1、如果希望记住元素的添加顺序，需要存储重复的元素，又要频繁的根据索引查询数据?
        // -- 用ArrayList集合(有序、可重复、有索引)，底层基于数组的。

        // 2、如果希望记住元素的添加顺序，与且增删首尾数据的情况较多?
        // -- 用 LinkedList 集合(有序、可重复、有索引)，底层基于双链表实现的。

        // 3、如果不在意元素顺序，也没有重复元素需要存储，只希望增删改查都快?
        // -- 用 Hashset 集合(无序，不重复，无索引)，底层基于哈希表实现的。

        // 4、如果希望记住元素的添加顺序，也没有重复元素需要存储，且希望增删改查都快?
        // -- 用 LinkedHashSet 集合(有序，不重复，无索引)，底层基于哈希表和双链表

        // 5、如果要对元素进行排序，也没有重复元素需要存储?且希望增删改查都快?
        // -- 用 TreeSet 集合，基于红黑树实现，
    }
}
